package com.beamfield.dao.process;

import com.beamfield.model.SavebeamDado;
import com.beamfield.modelVo.TreeVo;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Component;

import java.util.List;
@Component
public interface SavebeamDadoMapper {
    int deleteByPrimaryKey(Long id);

    int insert(SavebeamDado record);

    int insertSelective(SavebeamDado record);

    SavebeamDado selectByPrimaryKey(Long id);

    int updateByPrimaryKeySelective(SavebeamDado record);

    int updateByPrimaryKey(SavebeamDado record);

    List<TreeVo> selectGroupByArea(@Param("beamId") Long beamId);

    List<TreeVo> selectByArea(@Param("beamId") Long beamId, @Param("area") String area);

    List<TreeVo> selectByAreaAndDado(@Param("beamId") Long beamId,@Param("area")  String area,@Param("dado") String dado);

    int countByBeamId(@Param("beamId") Long beamId);

    String selectDadoByBimId(@Param("bim_id") String bimId, @Param("beam_Id")String beamId);

    SavebeamDado selectBimidBydado(@Param("dado")String dado, @Param("beam_Id")Long beamId);

    List<TreeVo> selectByBeamId(@Param("beamId") Long beamId);

    List<SavebeamDado> selectPage(@Param("offset") String offset,@Param("limit") String limit,@Param("beamId") Long beamId);

    long countPage(Long beamId);

    SavebeamDado selectByPedestal(@Param("area") String area, @Param("dado") String dado, @Param("location") String location, @Param("beamId") Long beamId);
}
